今天要使用nodejs設置Express App,通過Express App 建立一個旳後端api,供我們從前端react應用程序到後端數據庫mongoDB進行數據存取。
在VScode建立backend文件夾,在backend文件夾建立一個server.js檔案,它是後端應用程序的入口文件,是註冊express app的地方。
(先安裝好nodejs)開啟終端機輸入npm init –y 初始化產生一個package.json,我們會在package.json裡自行設定scripts腳本。
3-1 安裝express,
3-2 在server.js檔案用require導入套件
3-3 存入express變數中產生app實例
3-4 路由設定app.get(第一個參數/根目錄,第二個參數是函數,處理request和respone返回訊息到server端)
3-5 設定監聽本地主機端口port。
npm install express
const express = require('express')
const app = express()
app.get("/",(req,res)=>{
res.send("Hello World")
})
app.listen(8000,()=>{
console.log("Server is running at http://localhost:8000")
})
4 安裝nodemon包,我們每次要執行檔案需下指令node server.js,每當程式內容有更改,必需儲存再node server.js一次,nodemon讓我可以save後會自動更新網頁。
4-1 安裝 nodemon
4-2在package.json “scripts”新增 " start-dev ":"nodemon server.js"
4-3 在終端機輸入npm run start-dev,這樣程式中有進行更改時網頁會自動更新。
npm install –g nodemon
"scripts": {
" start-dev ":"nodemon server.js",
}
npm run start-dev
5 設定環境變數,一般port number不採用硬編碼的方式,而且最後如要將檔案存到github的存儲庫時,可將環境變量保持隱藏狀態,這樣可以保護身份驗證等數據,所以會把端口變數存儲在環境變數中。
5-1 npm install dotenv
5-2 在backend文件夾建立一個.env文件,當我們將應用程式存到github中.env文件會被忽略。
5-3 在.env文件中設定port=8000(不要有空格,portnumber自行設定),
5-4 在server.js中導入,並更改監聽端口
npm install dotenv
.env
port=8000
server.js
require (‘dotenv’).config()
app.listen(process.env.PORT, ( ) =>{
console.log(‘Server is running at http://localhost:’ , process.env.PORT)
})